<html>
<head><meta charset="utf-8"><title>polymorphisation benchmark · t-compiler/wg-polymorphization · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/216091-t-compiler/wg-polymorphization/index.html">t-compiler/wg-polymorphization</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation.20benchmark.html">polymorphisation benchmark</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="206154160"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation%20benchmark/near/206154160" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> davidtwco <a href="https://rust-lang.github.io/zulip_archive/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation.20benchmark.html#206154160">(Aug 06 2020 at 15:10)</a>:</h4>
<p>Since <code>script-servo</code> was changed and <a href="#narrow/stream/238009-t-compiler.2Fmeetings/topic/.5Bweekly.20meeting.5D.202020-08-05.20.2354818/near/206144968">now removed</a> from perf, it might make sense to add a synthetic benchmark that would benefit from polymorphisation (both as it currently exists and with improvements we want to make in future - e.g. when only sizes of generic params are required). </p>
<p>By adding a benchmark with a case that we would expect polymorphisation to improve, we can confirm it does so and find out when other changes impact that benchmark (e.g. partitioning changes). </p>
<p>Right now, none of the current benchmarks provide much opportunity for polymorphisation to do anything.</p>



<a name="206155384"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation%20benchmark/near/206155384" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation.20benchmark.html#206155384">(Aug 06 2020 at 15:17)</a>:</h4>
<p>I would be happy to add a smaller benchmark -- script-servo's problem was the excessive compile times (over a minute in opt)</p>



<a name="206155464"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation%20benchmark/near/206155464" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation.20benchmark.html#206155464">(Aug 06 2020 at 15:18)</a>:</h4>
<p>Although I guess just regular codegen tests and such should be able to get us similar results?</p>



<a name="206155474"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation%20benchmark/near/206155474" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation.20benchmark.html#206155474">(Aug 06 2020 at 15:18)</a>:</h4>
<p>(and more fine-grained etc)</p>



<a name="206155943"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation%20benchmark/near/206155943" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> davidtwco <a href="https://rust-lang.github.io/zulip_archive/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation.20benchmark.html#206155943">(Aug 06 2020 at 15:21)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116122">simulacrum</span> <a href="#narrow/stream/216091-t-compiler.2Fwg-polymorphization/topic/polymorphisation.20benchmark/near/206155464">said</a>:</p>
<blockquote>
<p>Although I guess just regular codegen tests and such should be able to get us similar results?</p>
</blockquote>
<p>I suppose that's true - a codegen test would give us a lot of what we want. I don't think it'd hurt to add one so we can see the perf impact and observe how other changes impact it, but it's definitely not a priority.</p>



<a name="206156059"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation%20benchmark/near/206156059" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> davidtwco <a href="https://rust-lang.github.io/zulip_archive/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation.20benchmark.html#206156059">(Aug 06 2020 at 15:22)</a>:</h4>
<p>(I'm not rushing to write such a benchmark, just wanted to note the idea down)</p>



<a name="206162428"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation%20benchmark/near/206162428" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/216091-t-compiler/wg-polymorphization/topic/polymorphisation.20benchmark.html#206162428">(Aug 06 2020 at 16:09)</a>:</h4>
<p>Yeah, I don't think I have time to add one myself, but it's pretty easy - just a normal Cargo project in collector/benchmarks should work.</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>